package com.ukao.steward.util;


import java.math.BigDecimal;

/**
 * Created by ukaodev on 2017/8/12.
 */

public class DecimalUtil {

    /**
     * 金钱加法
     */
    public static String add(String v1, String v2) {
        BigDecimal b1 = new BigDecimal(CheckUtils.isEmpty(v1) ?"0":v1);
        BigDecimal b2 = new BigDecimal(CheckUtils.isEmpty(v2) ?"0":v2);
        BigDecimal result = b1.add(b2);
        result = result.setScale(2,BigDecimal.ROUND_HALF_UP);
        return result.toString();
    }

    /**
     * 金钱乘法
     */
    public static String multiply(String v1, String v2) {

        BigDecimal b1 = new BigDecimal(CheckUtils.isEmpty(v1) ?"0":v1);
        BigDecimal   b2 = new BigDecimal(CheckUtils.isEmpty(v2)||v2.equals("0")||v2.equals("0.00") ?"1":v2);
        BigDecimal result = b1.multiply(b2).setScale(2,BigDecimal.ROUND_HALF_UP);
        return result.toString();
    }





    /**
     * 金钱除法
     */
    public static String divide(String v1, String v2) {
        BigDecimal b1 = new BigDecimal(CheckUtils.isEmpty(v1) ?"0":v1);
        BigDecimal   b2 = new BigDecimal(CheckUtils.isEmpty(v2)||v2.equals("0")||v2.equals("0.00") ?"1":v2);
        BigDecimal result = b1.divide(b2).setScale(2,BigDecimal.ROUND_HALF_UP);

        return result.toString();
    }



    /**
     * 金钱减法
     */
    public static String subtract(String v1, String v2) {
        BigDecimal b1 = new BigDecimal(CheckUtils.isEmpty(v1) ?"0":v1);
        BigDecimal b2 = new BigDecimal(CheckUtils.isEmpty(v2) ?"0":v2);
        BigDecimal result = b1.subtract(b2);
        result = result.setScale(2).setScale(2,BigDecimal.ROUND_HALF_UP);
        return result.toString();
    }

    /**
     * 乘以100
     */
    public static String multiply(String v1) {
        BigDecimal b1 = new BigDecimal(CheckUtils.isEmpty(v1) ?"0":v1);
        BigDecimal b2 = new BigDecimal("100");
        BigDecimal result = b1.multiply(b2).setScale(2,BigDecimal.ROUND_HALF_UP);
        return String.valueOf(result.intValue());
    }



}
